package com.SNQ.project.English_speaking_learning_system.service;

import com.SNQ.project.English_speaking_learning_system.common.result.PageResult;
import com.SNQ.project.English_speaking_learning_system.pojo.dto.AdminDTO;
import com.SNQ.project.English_speaking_learning_system.pojo.dto.AdminLoginDTO;
import com.SNQ.project.English_speaking_learning_system.pojo.dto.AdminPageQueryDTO;
import com.SNQ.project.English_speaking_learning_system.pojo.entity.Admin;

public interface AdminService {

    /**
     * 管理员登录
     * @param adminLoginDTO
     * @return
     */
    Admin login(AdminLoginDTO adminLoginDTO);

    /**
     * 新增员工
     * @param adminDTO
     */
    void save(AdminDTO adminDTO);

    /**
     * 分页查询
     * @param amdinPageQueryDTO
     * @return
     */
    PageResult pageQuery(AdminPageQueryDTO amdinPageQueryDTO);

    /**
     * 启用禁用管理员账号
     * @param status
     * @param id
     */
    void startOrStop(Integer status, Long id);

    /**
     * 根据id查询管理员
     * @param id
     * @return
     */
    Admin getById(Long id);

    /**
     * 编辑管理员信息
     * @param adminDTO
     */
    void update(AdminDTO adminDTO);
}
